package file;

import jdk.nashorn.internal.runtime.OptimisticReturnFilters;

import java.io.File;
import java.io.IOException;

/**
 * 使用File可以做到
 * 1.访问其表示的文件或目录的属性信息，列如：名字，大小，修改时间等等
 * 2.创建和删除文件或目录
 * 3.访问一个目录中的子项
 * 但是File不能访问文件数据
 * */

public class FileDemo {
    public static void main(String[] args) throws IOException {
        //使用File访问当前项目目录下的demo.txt文件
        /*
        创建File时要在指定路径，而路径通常使用相对路径
        相对路径的好处在于有良好的跨平台性
        "/"是相对路径中使用最多的，表示"当前目录"，而当前目录是哪里
        取决于程序运行环境而定，在idea中运行，JAVA程序时，这里指定的
        当前目录就是当前程序所在的项目目录
         */

        //File file = new File("c:/xxx/xxx/xxx/xx.txt")
        File file = new File("./demo.txt");
        file.createNewFile();

        //获取名字
        String name = file.getName();
        System.out.println(name);

        //获取文件大小(单位是字节)
        long len = file.length();
        System.out.println(len);

        //是否可以读写
        boolean cr = file.canWrite();
        boolean cw = file.canRead();

        System.out.println(cr);
        System.out.println(cw);

        //是否隐藏
        boolean ih = file.isHidden();
        System.out.println(ih);



    }
}
